The subject matter disclosed herein relates generally to an apparatus for detecting position, and in particular, to an encoding sequence to detect the position and direction of motion of an actuator.
As is known, actuators are controlled devices that transfer energy from a source to an object to induce operation of that object. Actuators may be driven, for example, by a variety of sources including, but not limited to, electrical, hydraulic, or pneumatic. In response to energy from the source, the actuator may generate a rotational or linear force to drive, for example, a ball screw or a piston. In some applications, the actuator may simply turn on or off and may be controlled by limit switches or positive stops at the end of travel. In other applications, it is desirable to have more precise control of the actuator, requiring knowledge of the current position of the actuator.
Historically, numerous encoding schemes have been used to obtain the current position of an actuator. If the actuator is driven by a rotational force, such as a motor, a rotational position sensor such as an encoder or resolver may be attached to the motor. Knowledge of the angular position of the motor is converted to a corresponding position of the actuator. If the actuator is driven by a linear force, such as a hydraulic cylinder, a linear position sensor may be attached to the cylinder to obtain a position measurement.
Numerous encoding techniques have been employed in conjunction with the position sensors to obtain the desired position information. A physically detectable pattern may be affixed to or integrally assembled on the actuator. A sensor head is provided to detect the pattern and generate signals corresponding to the pattern. One such pattern utilizes multiple bits at each position that provide a unique identifier, or number, for each position. The number may represent a binary coded number or another number encoded according to another scheme, such as Gray code. However, as the length of travel of the actuator and/or the desired precision increases, the number of bits required to identify each of the positions also increases. The sensor head and accompanying control electronics must be configured to read and to process the increased number of bits. Thus, it would be desirable to provide an encoding sequence that utilizes a reduced number of bits to define each of the positions over the length of travel of the actuator.
Whether rotational or linear, the position sensors may be further classified as incremental or absolute. An incremental sensor starts at zero upon power up and maintains a record of movement of the actuator in either a positive or negative direction from the initial position. A known reference point, or home position, may also be used to reset the incremental sensor and subsequently control motion of the actuator from the known reference point. An absolute position sensor is similarly reset to a known reference point during initial configuration; however, the absolute position sensor maintains knowledge of the current position when power to the sensor is cycled.
In order to maintain knowledge of the current position, either static memory (i.e., data is retained during a power cycle) is required or the encoding sequence must provide a unique sequence of data at each position. However, each of these implementations has certain disadvantages. Static memory is not effective if there is potential for movement of the actuator while power is off in which case the retained value will not be correct upon power up. Providing a unique identifier for each position may require an increased number of bits for each identifier and related circuitry to read each bit. Thus, it would be desirable to provide an encoding sequence from which the current position of the actuator may be determined upon power up while maintaining a reduced number of bits to define each of the positions over the length of travel of the actuator.